﻿using Shell.Common;

namespace Shell.KnowledgeBase
{
    public class SyntaxRule
    {
        public SyntaxRule(
            Statement declaration,
            Statement definition)
        {
            declaration.NotNull();
            definition.NotNull();

            Declaration = declaration;
            Definition = definition;
        }

        public Statement Declaration { get; private set; }

        public Statement Definition { get; private set; }

        public override string ToString()
        {
            return string.Format("{0} ::= {1}", Declaration, Definition);
        }
    }
}
